Conventional examples of automatic programming apparatuses configured to receive an input of processed unit data or machining unit data that is used for performing partial processing or partial machining and contains data indicating a processed region shape or a machined region shape, a processing method or a machining method, tools to be used, and processing conditions and to generate control command information to operate a machine tool based on the input processed unit data include an automatic programming apparatus that uses, as a method for defining processing or machining such as a chamfering process, a method by which the shape of a target part of the processing or the machining is directly specified by using a shape element such as a line or an arc (see, for example, Patent Document 1) and an automatic programming apparatus that generates an intermediate workpiece shape prior to a chamfering process or chamfering machine based on a Numerical Control (NC) computer program (hereinafter, “NC program”) up to a time before the chamfering process is performed and automatically extracts a target part of the chamfering process from the generated intermediate workpiece shape (see, for example, Patent Document 2).